/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package rw.ac.kiosc.jdbc.school.dao;

import java.util.List;
import rw.ac.kiosc.jdbc.school.orm.Department;
import rw.ac.kiosc.jdbc.school.orm.Student;

/**
 *
 * @author antoine
 */
public interface StudentDAO {
    
    public Student saveStudent(Student student);

    public Student updateStudent(Student student);

    public Student saveOrUpdateStudent(Student student);

    public boolean deleteStudent(Student student);

    public Student getStudentById(int studentId);
    
    public List<Student> getAllStudents();

    public Student getStudentByRegistrationNumber(String registrationNumber);

    public List<Student> getStudentsByName(String name);

    public List<Student> getStudentsByDepartment(Department department);

    public List<Student> getStudentsByYearOfStudy(int yos);

    public List<Student> getStudentsByYearOfStudyAndDepartment(int yos, Department department);
}

